home *** CD-ROM | disk | FTP | other *** search
/ Aminet 48 / Aminet 48 (2002)(GTI - Schatztruhe)[!][Apr 2002].iso / Aminet / text / edit / vim60rt.lha / Vim / vim60 / doc / os_os2.txt < prev    next >
Encoding:
Text File  |  2001-09-26  |  8.4 KB  |  221 lines

  1. *os_os2.txt*    For Vim version 6.0.  Last change: 2001 Sep 03
  2.  
  3.  
  4.           VIM REFERENCE MANUAL    by Paul Slootman
  5.  
  6.  
  7.                             *os2* *OS2* *OS/2*
  8. This file contains the particularities for the OS/2 version of Vim.
  9.  
  10. At present there is no native PM version of the GUI version of vim: The OS/2
  11. version is a console application.  However, there is now a Win32s-compatible
  12. GUI version, which should be usable by owners of Warp 4 (which supports
  13. Win32s) in a Win-OS/2 session.  The notes in this file refer to the native
  14. console version.
  15.  
  16.  
  17. NOTE
  18.  
  19. This OS/2 port works well for me and a couple of other OS/2 users; however,
  20. since I haven't had much feedback, that either means no (OS/2-specific) bugs
  21. exist (besides the ones mentioned below), or no one has yet created a
  22. situation in which any bugs are apparent.  File I/O in Dos and Unix mode,
  23. binary mode, and FAT handling all seem to work well, which would seem to be
  24. the most likely places for trouble.
  25.  
  26. A known problem is that files opened by Vim are inherited by other programs
  27. that are started via a shell escape from within Vim.  This specifically means
  28. that Vim won't be able to remove the swap file(s) associated with buffers open
  29. at the time the other program was started, until the other program is stopped.
  30. At that time, the swap file may be removed, but if Vim could not do that the
  31. first time, it won't be removed at all. You'll get warnings that some other
  32. Vim session may be editing the file when you start Vim up again on that file.
  33. This can be reproduced with ":!start epm". Now quit Vim, and start Vim again
  34. with the file that was in the buffer at the time epm was started.  I'm working
  35. on this!
  36.  
  37. A second problem is that Vim doesn't understand the situation when using it
  38. when accessing the OS/2 system via the network, e.g. using telnet from a Unix
  39. system, and then starting Vim. The problem seems to be that OS/2 =sometimes=
  40. recognizes function / cursor keys, and tries to convert those to the
  41. corresponding OS/2 codes generated by the "normal" PC keyboard. I've been
  42. testing a workaround (mapping the OS/2 codes to the correct functions), but so
  43. far I can't say anything conclusive (this is on Warp 3, by the way). In the
  44. meantime any help will be appreciated.
  45.  
  46.  
  47. PREREQUISITES
  48.  
  49. To run Vim, you need the emx runtime environment (at least rev. 0.9b).  This
  50. is generally available as (ask Archie about it):
  51.  
  52.     emxrt.zip     emx runtime package
  53.  
  54. I've included a copy of emx.dll, which should be copied to one of the
  55. directories listed in your LIBPATH. Emx is GPL'ed, but the emx.dll library is
  56. not (read COPYING.EMX to find out what that means to you).
  57.  
  58. This emx.dll is from the emxfix04.zip package, which unfortunately has a bug,
  59. eh, I mean a POSIX feature, in select().  Versions of Vim before 3.27 will
  60. appear to hang when starting (actually, while processing vimrc). Hit <Enter> a
  61. couple of times until Vim starts working if this happens.  Next, get an up to
  62. date version of Vim!
  63.  
  64.  
  65. HELP AND VIMRC FILE
  66.  
  67. If you unpack the archive that Vim came in and run Vim directly from where it
  68. was unpacked, Vim should be able to find the runtime files and your .vimrc
  69. without any settings.
  70.  
  71. If you put the runtime files separately from the binary, the VIM environment
  72. variable is used to find the location of the help files and the system .vimrc.
  73. Place an entry such as this in CONFIG.SYS: >
  74.  
  75.   SET VIM=c:/local/lib/vim
  76.  
  77. Put your .vimrc and your other Vim files in this directory.  Copy the runtime
  78. directory to this directory.  Each version of Vim has its own runtime
  79. directory.  It will be called something like "c:/local/lib/vim/vim54".  Thus
  80. you get a tree of Vim files like this:
  81.     c:/local/lib/vim/.vimrc
  82.     c:/local/lib/vim/vim54/filetype.vim
  83.     c:/local/lib/vim/vim54/doc/help.txt
  84.     etc.
  85.  
  86. Note: .vimrc may also be called _vimrc to accommodate those who have chosen to
  87. install OS/2 on a FAT file system. Vim first tries to find .vimrc and if that
  88. fails, looks for _vimrc in the same place.  The existence of a .vimrc or
  89. _vimrc file influences the 'compatible' options, which can have unexpected side
  90. effects.  See |'compatible'|.
  91.  
  92. If you're using network drives with OS/2, then you can install Vim on a
  93. network drive (including .vimrc; this is then called the "system" vimrc file),
  94. and then use a personal copy of .vimrc (the "user" vimrc file). This should be
  95. located in a directory indicated by the HOME environment variable.
  96.  
  97.  
  98. ENVIRONMENT VARIABLES IN FILE NAMES
  99.  
  100. This HOME environment variable is also used when using ~ in file names, so
  101. ":e ~/textfile" will edit the file "textfile" in the directory referred to by
  102. HOME.  Additionally you can use other environment variables in file names, as
  103. as ":n $SRC/*.c".
  104.  
  105. The HOME environment variable is also used to locate the .viminfo file
  106. (see |viminfo-file|).  There is no support yet for .viminfo on FAT file
  107. systems yet, sorry.  You could try the -i startup flag (as in "vim -i
  108. $HOME/_viminfo") however.
  109.  
  110. If the HOME environment variable is not set, the value "C:/" is used as a
  111. default.
  112.  
  113.  
  114. BACKSLASHES
  115.  
  116. Using slashes ('/') and backslashes ('\') can be a bit of a problem (see
  117. |dos-backslash| for more explanation), but in almost all cases Vim does "The
  118. Right Thing".  Vim itself uses backslashes in file names, but will happily
  119. accept forward slashes if they are entered (in fact, sometimes that works
  120. better!).
  121.  
  122.  
  123. TEMP FILES
  124.  
  125. Temporary files (for filtering) are put in the first directory in the next
  126. list that exists and where a file can be created:
  127.     $TMP
  128.     $TEMP
  129.     C:\TMP
  130.     C:\TEMP
  131.     current directory
  132.  
  133.  
  134. TERMINAL SETTING
  135.  
  136.                             *os2ansi*
  137. Use "os2ansi" as the TERM environment variable (or don't set it at all, as the
  138. default is the correct value). You can set term to os2ansi in the .vimrc, in
  139. case you need TERM to be a different value for other applications.  The
  140. problem is that OS/2 ANSI emulation is quite limited (it doesn't have insert /
  141. delete line, for example).
  142.  
  143. If you want to use a different value for TERM (because of other programs, for
  144. example), make sure that the termcap entry for that TERM value has the
  145. appropriate key mappings. The termcap.dat distributed with emx does not always
  146. have them.  Here are some suitable values to add to the termcap entry of your
  147. choice; these allow the cursor keys and the named function keys (such as
  148. pagedown) to work.
  149.  
  150.     :ku=\316H:kd=\316P:kl=\316K:kr=\316M:%i=\316t:#4=\316s:\
  151.     :kD=\316S:kI=\316R:kN=\316Q:kP=\316I:kh=\316G:@7=\316O:\
  152.     :k1=\316;:k2=\316<:k3=\316=:k4=\316>:k5=\316?:k6=\316@:\
  153.     :k7=\316A:k8=\316B:k9=\316C:k;=\316D:
  154.  
  155.  
  156. Paul Slootman
  157.  
  158.  
  159. 43 LINE WINDOW
  160.  
  161. A suggestion from Steven Tryon, on how to run Vim in a bigger window:
  162.  
  163. When I call Vim from an OS/2 WPS application such as PMMail it comes up
  164. in the default 25-line mode.  To get a more useful window size I make
  165. my external editor "vimbig.cmd" which in turn calls "vimbig2.cmd".
  166. Brute force and awkwardness, perhaps, but it works.
  167.  
  168. vimbig.cmd: >
  169.    @echo off
  170.    start "Vi Improved" /f vimbig2.cmd %1 %2 %3 %4
  171.  
  172. vimbig2.cmd: >
  173.    @echo off
  174.    mode 80,43
  175.    vim.exe %1 %2 %3 %4
  176.    exit
  177. <
  178.  
  179. CLIPBOARD ACCESS (provided by Alexander Wagner)
  180.  
  181. Vim for OS/2 has no direct access to the system clipboard.  To enable access
  182. anyway you need an additional tool which gives you access to the clipboard
  183. from within a vio application.  The freeware package clipbrd.zip by Stefan
  184. Gruendel can be used for this purpose.  You might download the package
  185. including precompiled binaries and all sources from: >
  186.     http://www.stellarcom.org/vim/index.html.
  187.  
  188. Installation of this package is straight forward: just put the two executables
  189. that come with this package into a directory within your PATH for vim should
  190. be able to call them from whatever directory you are working.
  191.  
  192. To copy text from the clipboard to your vim session you can use the :r
  193. command.  Simply call clipbrd.exe from within vim in the following way: >
  194.  
  195.     :r !clipbrd -r
  196.  
  197. To copy text from vim to the system clipboard just mark the text in the usual
  198. vim-manner and call: >
  199.  
  200.     :!clipbrd -w
  201.  
  202. which will write your selection right into OS/2's clipboard.
  203.  
  204. For ease of use you might want to add some maps for this commands.  E.g. to
  205. use F11 to paste the clipboard into vim and F12 to copy selected text to the
  206. clipboard you would use: >
  207.  
  208.     if has("os2")
  209.       imap <F11>     <ESC>:r !clipbrd -r<CR>i
  210.       vmap <F12>     :!clipbrd -w<cr>
  211.     else
  212.       imap <F11>     <ESC>"*p<CR>i
  213.       vmap <F12>     "*y
  214.     endif
  215.  
  216. This will ensure that only on OS/2 clipbrd is called whereas on other
  217. platforms vims build in mechanism is used. (To enable this functions on every
  218. load of vim plase the above lines in your .vimrc.)
  219.  
  220.  vim:tw=78:ts=8:ft=help:norl:
  221.